<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:o="http://omnifaces.org/ui"> 
		
<h:head>
		 
</h:head>
<h:body>
	<ui:composition template="/layout/layout.xhtml">	
		<ui:define name="conteudo">		
			<h:form>
				<p:panel header="Dados principais">
					<h:panelGrid>
						<p:outputLabel for="nome" value="Nome" />
						<p:inputText id="nome" value="#{usuarioBean.usuario.nome}" />
						<p:outputLabel for="cpf" value="CPF" />
						<p:inputText id="cpf" value="#{usuarioBean.usuario.cpf}" />
						<p:outputLabel for="modulos" value="Módulos" />
						<p:pickList							
							id="modulos" 
							value="#{usuarioBean.modulosPickList}"
							var="_modulo" 
							itemLabel="#{_modulo}" 
							itemValue="#{_modulo}">
							<o:converter converterId="omnifaces.ListConverter" list="#{usuarioBean.modulosPickList.source}" />
						</p:pickList>
					</h:panelGrid>
				</p:panel>
				<p:panel header="Acesso">
					<h:panelGrid>
						<p:outputLabel for="login" value="Login" />
						<p:inputText id="login" value="#{usuarioBean.acesso.login}" required="true" />
						<p:outputLabel for="senha" value="Senha" />
						<p:password 
							id="senha" 
							value="#{usuarioBean.acesso.senha}" 
							feedback="true" 
							weakLabel="Fraco" 
							goodLabel="Medio" 
							strongLabel="Forte" 
							promptLabel="Por favor, digite uma senha" 
							required="true" />
					</h:panelGrid>
				</p:panel>
				<p:panel header="Endereço" toggleable="true">
	                <h:panelGrid>
	                	<p:outputLabel for="rua" value="Rua" />
		                <p:inputText id="rua" value="#{usuarioBean.endereco.rua}" />
		                <p:outputLabel for="numero" value="Número" />
		                <p:inputText id="numero" value="#{usuarioBean.endereco.numero}" />
		                <p:outputLabel for="cep" value="CEP" />
		                <p:inputText id="cep" value="#{usuarioBean.endereco.cep}" />
		                <p:outputLabel for="bairro" value="Bairro" />
		                <p:inputText id="bairro" value="#{usuarioBean.endereco.bairro}" />
		                <p:outputLabel for="outro" value="Outro" />
		                <p:inputText id="outro" value="#{usuarioBean.endereco.outro}" />
		                <p:outputLabel for="uf" value="UF" />			                
		                <p:selectOneMenu id="uf" converter="omnifaces.SelectItemsConverter" value="#{usuarioBean.uf}">	                	
		                	<f:selectItems value="#{usuarioBean.listaEstados}" var="_uf" itemLabel="#{_uf.sigla}" itemValue="#{_uf}" />
		                	<p:ajax listener="#{usuarioBean.municipiosPorUf()}" update="municipio" event="change" />	                		                			                	
		                </p:selectOneMenu> 
		                <p:outputLabel for="municipio" value="Município" />
		                <p:selectOneMenu id="municipio" converter="omnifaces.SelectItemsConverter" value="#{usuarioBean.municipioSelecionado}">	                	                		
		                	<f:selectItems value="#{usuarioBean.municipios}" var="_mun" itemLabel="#{_mun.nome}" itemValue="#{_mun}" />
		                </p:selectOneMenu>
					</h:panelGrid>                
            	</p:panel>
	            <p:panel header="Contato" toggleable="true">
	            	<h:panelGrid>
		                <p:outputLabel for="telefone" value="Telefone" />
		                <p:inputText id="telefone" value="#{usuarioBean.contato.telefone}" />
		                <p:outputLabel for="celular" value="Celular" />
		                <p:inputText id="celular" value="#{usuarioBean.contato.celular}" />
		                <p:outputLabel for="email" value="E-mail" />
		                <p:inputText id="email" value="#{usuarioBean.contato.email}" />
	                </h:panelGrid>
	            </p:panel>
	            <div align="center" style="margin-top: 30px;">
	            	<p:commandButton value="Salvar" action="#{usuarioBean.salvar()}" update="@form" />
	            	<p:commandButton value="Voltar"  />
	            </div>    
		    </h:form>
		</ui:define>
	</ui:composition>      
</h:body>
</html>
